package cn.shop.admin.service;

import cn.shop.admin.entity.PayCallBack;
import cn.shop.transcation.withdraw.entity.Withdraw;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * 提现(Withdraw)表服务接口
 *
 * @author jzw
 * @since 2021-11-10 10:06:01
 */
public interface WithdrawService extends IService<Withdraw> {

	/**
	 * 批量删除数据
	 *
	 * @param idList id 集合
	 * @return
	 * @author jzw
	 * @since 2021/11/15 14:05
	 */
	boolean batchDelete(List<Long> idList);

	/**
	 * 导出提现数据
	 *
	 * @param pwd
	 * @param ids
	 * @param response
	 * @param type
	 * @param channel 提现渠道（云支付）
	 * @author jzw
	 * @since 2022/1/11 16:57
	 */
	void exportWithdraw(String pwd, List<Long> ids, HttpServletResponse response, String type, String channel);

	boolean sendBackWithdraw(List<Long> ids);

	boolean completePayment(List<Long> ids);

	String notify(PayCallBack req);

    Map<String, Object> getStatistics(QueryWrapper query);
}

